package com.findFish.fish.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.findFish.common.annotation.Excel;
import com.findFish.common.core.domain.BaseEntity;

/**
 * 鱼类生长记录对象 fish_growth
 * 
 * @author ruoyi
 * @date 2025-04-01
 */
public class FishGrowth extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 生长记录ID */
    private Long id;

    /** 鱼类种群ID */
    @Excel(name = "鱼类种群ID")
    private Long fishPopulationId;

    /** 记录日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "记录日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date recordDate;

    /** 平均体长(cm) */
    @Excel(name = "平均体长(cm)")
    private BigDecimal averageLength;

    /** 平均体重(g) */
    @Excel(name = "平均体重(g)")
    private BigDecimal averageWeight;

    /** 生长速率（%） */
    @Excel(name = "生长速率", readConverterExp = "%=")
    private BigDecimal growthRate;

    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }

    public void setFishPopulationId(Long fishPopulationId) 
    {
        this.fishPopulationId = fishPopulationId;
    }

    public Long getFishPopulationId() 
    {
        return fishPopulationId;
    }

    public void setRecordDate(Date recordDate) 
    {
        this.recordDate = recordDate;
    }

    public Date getRecordDate() 
    {
        return recordDate;
    }

    public void setAverageLength(BigDecimal averageLength) 
    {
        this.averageLength = averageLength;
    }

    public BigDecimal getAverageLength() 
    {
        return averageLength;
    }

    public void setAverageWeight(BigDecimal averageWeight) 
    {
        this.averageWeight = averageWeight;
    }

    public BigDecimal getAverageWeight() 
    {
        return averageWeight;
    }

    public void setGrowthRate(BigDecimal growthRate) 
    {
        this.growthRate = growthRate;
    }

    public BigDecimal getGrowthRate() 
    {
        return growthRate;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("fishPopulationId", getFishPopulationId())
            .append("recordDate", getRecordDate())
            .append("averageLength", getAverageLength())
            .append("averageWeight", getAverageWeight())
            .append("growthRate", getGrowthRate())
            .toString();
    }
}
